iT邦幫忙

2023 iThome 鐵人賽

0
自我挑戰組

定期推送油價通知到Line上的訊息通知,並使用GitLab CI排程搭配Google Colab系列 第 16

104爬蟲-使用分詞工具統計工作內容中的出現詞頻率

  • 分享至 

  • xImage
  •  

今天要來將前面已經蒐集好的工作內容做斷詞等分析,目前規劃的流程如下:

1.從 Excel 文件中讀取工作內容欄位資料並儲存到 job_descriptions.txt 檔案中。
2.統計該檔案中的詞頻
3.發現有標點符號及常用字
* 去掉標點符號
* 將常用字加入為停用詞
4.使用 Jieba套件 中外部自訂辭典來進行分詞。
5.將分詞結果儲存到 segmented_job_descriptions.txt 檔案中。
6.使用 WordCloud 套件繪製詞雲圖,找出前三名的技能需求。

預計大概是這樣的作法:

import jieba
from collections import Counter

# 1. 讀取 '工作內容彙總.txt' 文件的內容
with open('工作內容彙總.txt', 'r', encoding='utf-8') as file:
    content = file.read()

# 2. 使用 Jieba 進行分詞
words = jieba.cut(content)

# 3. 統計詞頻
word_count = Counter(words)

# 4. 顯示或儲存詞頻結果
# 顯示詞頻結果
for word, count in word_count.most_common(10):  # 顯示前10個詞頻最高的詞語
    print(f'{word}: {count}')

# 如果你想儲存詞頻結果到文件,可以使用以下代碼
with open('詞頻結果.txt', 'w', encoding='utf-8') as output_file:
    for word, count in word_count.most_common():
        output_file.write(f'{word}: {count}\n')

以上流程大概是參考了這些大大的資料:

  1. https://cloud.tencent.com/developer/article/1953706
  2. https://medium.com/seaniap/python-%E4%B8%AD%E6%96%87%E8%87%AA%E7%84%B6%E8%AA%9E%E8%A8%80%E8%99%95%E7%90%86jieba%E6%96%B7%E8%A9%9E-9ab44a1b6a9d
  3. https://medium.com/@fsflyingsoar/%E7%AD%86%E8%A8%98-for-python-jieba-wordcloud-b814f5e04e01

主要是目前對於一整大段的中文斷詞,需要了解如果直接使用詞頻統計的話
還會有標點符號,常用字,跟繁簡通用字的問題,不像英文可以直接分詞
這部分待後續實作後再來看看是否目前這樣的流程需改善~


上一篇
104 爬蟲-使用pyMySQL將資料寫到資料庫
系列文
定期推送油價通知到Line上的訊息通知,並使用GitLab CI排程搭配Google Colab16
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言